/*
 * motor.c
 *
 *  Created on: Mar 10, 2024
 *      Author: 11569
 */

#include "stm32f4xx_hal.h"


void motor_Init(void){//tb6612初始化
	HAL_GPIO_WritePin(GPIOC,GPIO_PIN_1,GPIO_PIN_SET);//AIN0
	HAL_GPIO_WritePin(GPIOC,GPIO_PIN_2,GPIO_PIN_SET);//AIN1
}

void motor_FR_corotation(void){//右前轮 正转
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_4,GPIO_PIN_RESET);//AIN0
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_7,GPIO_PIN_SET);//AIN1
}

void motor_FR_reverse(void){//右前轮 反转
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_4,GPIO_PIN_SET);//AIN0
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_7,GPIO_PIN_RESET);//AIN1
}

void motor_FL_corotation(void){//左前轮 正转
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_2,GPIO_PIN_RESET);//AIN0
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_3,GPIO_PIN_SET);//AIN1
}

void motor_FL_reverse(void){//左前轮 反转
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_2,GPIO_PIN_SET);//AIN0
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_3,GPIO_PIN_RESET);//AIN1
}

void motor_BR_corotation(void){//右后轮 正转
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_13,GPIO_PIN_SET);//AIN0
	HAL_GPIO_WritePin(GPIOC,GPIO_PIN_0,GPIO_PIN_RESET);//AIN1
}

void motor_BR_reverse(void){//右后轮 正转
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_13,GPIO_PIN_RESET);//AIN0
	HAL_GPIO_WritePin(GPIOC,GPIO_PIN_0,GPIO_PIN_SET);//AIN1
}

void motor_BL_corotation(void){//左后轮 正转
	HAL_GPIO_WritePin(GPIOA,GPIO_PIN_1,GPIO_PIN_RESET);//AIN0
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_14,GPIO_PIN_SET);//AIN1
}

void motor_BL_reverse(void){//左后轮 反转
	HAL_GPIO_WritePin(GPIOA,GPIO_PIN_1,GPIO_PIN_SET);//AIN0
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_14,GPIO_PIN_RESET);//AIN1
}

void motor_stop(void){//自由刹车
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_4,GPIO_PIN_SET);//		右后轮
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_7,GPIO_PIN_SET);

	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_2,GPIO_PIN_SET);//		左后轮
	HAL_GPIO_WritePin(GPIOE,GPIO_PIN_3,GPIO_PIN_SET);

	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_13,GPIO_PIN_SET);//	右后轮
	HAL_GPIO_WritePin(GPIOC,GPIO_PIN_0,GPIO_PIN_SET);

	HAL_GPIO_WritePin(GPIOA,GPIO_PIN_1,GPIO_PIN_SET);//		左后轮
	HAL_GPIO_WritePin(GPIOD,GPIO_PIN_14,GPIO_PIN_SET);
}

